WordPress apache伪静态规则设置

多少了解一点SEO知识的朋友都知道静态化的URL(什么是URL?自行百度)更利于搜索引擎收录,WordPress实现伪静态其实是很简单的,但有不少新人朋友还是始终无法成功设置WordPress伪静态。

1、首先确定Apache是否加载了Mod_rewrite 模块
方法: 检查 /etc/httpd/conf/httpd.conf 中是否存在以下两段代码 (具体路径可能会有所不同,但形式基本是一样的):
(一)LoadModule rewrite_module libexec/mod_rewrite.so
(二)AddModule mod_rewrite.c
2、检查Apache是否开启.htaccess支持
vi /etc/httpd/conf/httpd.conf
AllowOverride All #如果后面参数为None需要修改为All(大概在338行)

WordPress伪静态设置方法分Windows主机与和Linux主机,下面分开来介绍。

Linux主机WordPress伪静态设置方法

登录你的WordPress,点击左侧菜单设置选项下固定链接,如下图所示:

WordPress已经给出了几种URL伪静态形式,但都不很理想,我们希望的URL形式为:

域名/分类别名/文章ID.html

那么,如上图所示,选择自定义结构选项,填写:

/%category%/%post_id%.html

如果你对这种形式不满意,可以自定义任意形式,只要合理搭配参数即可,可以使用的参数如下:

%year%:文章发表的年份,四位数字,如2012

%monthnum%:文章发表的月份,如08

%day%:文章发表的日期,如28

%hour%:文章发表的时间(小时),如15

%minute%:文章发表的时间(分钟),如18

%second%:文章发表的时间(秒),如28

%postname%:文章别名,在发表文章时可以设置。

%post_id%:文章的ID,如68

%category%:分类别名,在添加分类时可以设置。

%tag%:标签的别名,在添加标签时可以设置。

设置好后,有的Linux主机允许程序自动创建.htaccess文件,但有的Linux主机不支持,此时,就需要我们手工上传.htaccess文件。将以下代码复制到记事本,保存为.htaccess。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
可能你会发现,电脑不允许保存文件时文件名为空,那么随便起一个名称,用FTP工具上传到你的网站根目录后重命名,将名称去掉即可。
此时,细心的你可能会发现分类页的URL里有一个category,你可以使用WP No Category Base插件来解决。
**Windows主机WordPress伪静态设置方法**
复制以下代码到记事本:
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
# Protect httpd.ini and httpd.parse.errors files
# from accessing through HTTP
# Rules to ensure that normal content gets through
RewriteRule /sitemap.xml /sitemap.xml [L]
RewriteRule /favicon.ico /favicon.ico [L]
# For file-based wordpress content (i.e. theme), admin, etc.
RewriteRule /wp-(.*) /wp-$1 [L]
# For normal wordpress content, via index.php
RewriteRule ^/$ /index.php [L]
RewriteRule /(.*) /index.php/$1 [L]

保存为httpd.ini,将这个文件上传到你的WordPress安装目录,然后设置固定链接,方法同Linux主机WordPress伪静态设置方法中的固定链接设置方法。

在Windows主机下设置WordPress伪静态有时会遇到这样那样的问题,所以,使用WordPress搭建网站最好选用Linux主机。

Jerky Lu wechat
欢迎加入微信公众号